package com.cskaoyan.javase.overload._0introduction;

/**
 * 用方法重载来改进案例
 * 方法的名字一旦相同后，多个方法之间又如何区分呢？所以方法的重载是有条件的
 * 方法名相同后,这些同名后,仍然能够区分开,这样才算方法的重载.
 *
 * 方法的签名: 唯一的确定一个方法去调用 "方法名 + 形参列表"
 * 现在方法的名字已经一样了,所以要想构成方法的重载,必须要求形参列表不同
 *
 * 什么算形参列表不同?
 *      1.数量不同
 *      2.如果数量相同,那就数据类型不同
 *      3.数量和类型都一样,那就位置/顺序不同
 *
 * 以上三种情况构成形参不同,没有第四种.其他的任何条件都不能构成方法的重载
 *
 * 经典问题:
 *      1.形参的名字不同,能构成方法重载吗? 不能
 *      2.其他的像修饰符列表,返回值类型这些统统没有关系
 *
 * @since 16:31
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class NewDemo {
    public static void main(String[] args) {

    }


    public static int sum(int a, int b){
        return a + b;
    }
    public static double sum(double a, double b){
        return a + b;
    }
    public static long sum(long a, long b){
        return a + b;
    }

    public static void test() {
    }

    public static void test(int a) {
    }
    // public static void test(int b) {
    // }

    public static void test(double a) {
    }

    public static void test(double a, int b) {
    }

    public static void test(int a, double b) {
    }


}
